Digital Network Assistant Chatbot for a Large Telecom Client
A large telecom client’s primary objective of this project is to help 10,000+ Network and Technology specialists across the globe ranging from circuit engineers to field operators who manage extremely complex provisioning, troubleshooting, and maintenance workflows under significant time pressure with a Digital Network Assistant.
The functional goals of this solution are: (1) Improved self-service capability, (2) Simplified information search, (3) Easy Troubleshooting. The solution must enable users through a conversational interface on Web, Mobile, and Instant messaging platforms, and be available 24x7.
The functional scope of work of this project encompassed:
- Use the conversational interface to assist users in handsfree mode
- Integrate with multiple AI / ML platforms such as Google’s Dialog Flow, Amazon’s AI, etc.
- Enable creation of multiple Bots or multiple instances of the same Bot to serve different groups across the globe
- Build an interface where business users without the technical background can create new intents and train the Bot with new skills
The technical scope includes:
- Building a platform to centrally manage the data, intents, skills to avoid conflicts and redundancy
- Building AWS infrastructure to manage and support Bot lifecycle
- Building the components and action handlers to fetch the corresponding data and display the information through an interface
- Building CI/CD pipeline to quickly develop, test, and deploy the new skills into production
- Building a user interface to help business and operational users to develop and train the Bot with new skills with code-less development architecture
The operational scope includes:
- Mining the skills of different groups and understanding the frequency of the usage
- Prioritizing the skills for development and quantifying the benefits
- Queuing the skills for development into Sprint Backlogs
- Training the new users on how to leverage Chatbot in their day to day tasks
Our Solution:
A chatbot is a tool to retrieve information and generate human-like conversation. It is mainly a dialog system aimed to solve/serve a specific purpose. To accomplish this goal, it needs:
- an interface (dialog or keyboard)
- NLP service to interpret the command
- action handlers to retrieve data
- secure connections and authentication
- data and intent storage
- orchestration services
- messaging platform integration
A Chatbot requires a robust framework to tie these components together and serve its purpose. The following figure illustrates the Chatbot framework:
The solution was built on the following best practices:
- Decouple the dependency between UI and NLP Backend – Build custom UI, use NLP via APIs for easy switching.
- Save the intents and dialogs within the local database – Improves performance and independence from provider.
- Design for multiple Bot Instances – To serve multiple business lines or geographies effectively.
- Develop different services – For Training, Testing, and Production lifecycle management.
Benefits:
- Reduced provisioning research time from 20 mins to under 3 mins
- Trained 180+ skills in 90 days, boosting productivity
- Saved $13M in FY 2019